package com.czl.app.service;

import com.czl.app.dto.FreeRoomDTO;
import com.czl.app.dto.RoomOrderDTO;
import com.czl.app.model.RoomPrice;
import com.czl.app.model.RoomType;

import java.util.List;

public interface RoomService {
    /**
     * 查询客房空余数
     * @param checkInDate
     * @param checkOutDate
     * @return 客房空余数信息
     */
    List<FreeRoomDTO> findFreeRoomByMinFreeCount(String checkInDate, String checkOutDate);

    /**
     * 查询客房类型
     * @param roomTypeNum 客房主键
     * @return 客房类
     */
    RoomType findRoomTypeByRoomTypeNum(Long roomTypeNum);

    /**
     * 查询客房类型价格
     * @param roomTypeNum 客房主键
     * @return 客房价格类
     */
    RoomPrice findRoomPriceByRoomTypeNum(Long roomTypeNum);

    /**
     * 创建订单
     * @param roomOrderDTO 所有订单信息
     * @return 订单流水号
     */
    Long reserveRoom(RoomOrderDTO roomOrderDTO);
}
